<?xml version="1.0" ?>
<!DOCTYPE html 
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>docs/index.rd</title>
</head>
<body>
<h2><a name="label-0" id="label-0">BDB::XML::Index</a></h2><!-- RDLabel: "BDB::XML::Index" -->
<p>The XML::Index class encapsulates the indexing specification of a container.
An indexing specification can be retrieved with the XML::Container#index
method, and modified using the XML::Container#index= method.</p>
<p>Note that adding an index to a container results in re-indexing all of
the documents in that container, which can take a very long time. It is 
good practice to design an application to add useful indices before 
populating a container.</p>
<p>Included module : Enumerable</p>
<h3><a name="label-1" id="label-1">Methods</a></h3><!-- RDLabel: "Methods" -->
<dl>
<dt><a name="label-2" id="label-2"><code>add(<var>uri</var>, <var>name</var>, <var>index</var>)</code></a></dt><!-- RDLabel: "add" -->
<dt><a name="label-3" id="label-3"><code>add(<var>uri</var>, <var>name</var>, <var>type</var>, <var>syntax</var>)</code></a></dt><!-- RDLabel: "add" -->
<dd>
<p>call-seq:</p>
<pre>add(uri, name, index)
add(uri, name, type, syntax)</pre>
<p>Add a new index</p>
<dl>
<dt><a name="label-4" id="label-4"><var>uri</var></a></dt><!-- RDLabel: "uri" -->
<dd>
The namespace for the element
</dd>
<dt><a name="label-5" id="label-5"><var>name</var></a></dt><!-- RDLabel: "name" -->
<dd>
The name parameter provides the fully qualified element type
to be indexed.
</dd>
<dt><a name="label-6" id="label-6"><var>index</var></a></dt><!-- RDLabel: "index" -->
<dd>
The index string is a comma separated list of strings that represent 
the indexing strategy
</dd>
<dt><a name="label-7" id="label-7"><var>type</var></a></dt><!-- RDLabel: "type" -->
<dd>
series of  values bitwise OR'd together to form the 
index strategy.
</dd>
<dt><a name="label-8" id="label-8"><var>syntax</var></a></dt><!-- RDLabel: "syntax" -->
<dd>
Identifies the type of information being indexed
</dd>
</dl></dd>
<dt><a name="label-9" id="label-9"><code>add_default(<var>index</var>)</code></a></dt><!-- RDLabel: "add_default" -->
<dd>
Adds an indexing strategy to the default index specification.</dd>
<dt><a name="label-10" id="label-10"><code>default</code></a></dt><!-- RDLabel: "default" -->
<dd>
return the default index specification</dd>
<dt><a name="label-11" id="label-11"><code>delete(<var>uri</var>, <var>name</var>, <var>index</var>)</code></a></dt><!-- RDLabel: "delete" -->
<dt><a name="label-12" id="label-12"><code>delete(<var>uri</var>, <var>name</var>, <var>type</var>, <var>syntax</var>)</code></a></dt><!-- RDLabel: "delete" -->
<dd>
Delete the specified index
<dl>
<dt><a name="label-13" id="label-13"><var>uri</var></a></dt><!-- RDLabel: "uri" -->
<dd>
The namespace for the element
</dd>
<dt><a name="label-14" id="label-14"><var>name</var></a></dt><!-- RDLabel: "name" -->
<dd>
The name parameter provides the fully qualified element type
to be indexed.
</dd>
<dt><a name="label-15" id="label-15"><var>index</var></a></dt><!-- RDLabel: "index" -->
<dd>
The index string is a comma separated list of strings that represent 
the indexing strategy
</dd>
<dt><a name="label-16" id="label-16"><var>type</var></a></dt><!-- RDLabel: "type" -->
<dd>
series of  values bitwise OR'd together to form the 
index strategy.
</dd>
<dt><a name="label-17" id="label-17"><var>syntax</var></a></dt><!-- RDLabel: "syntax" -->
<dd>
Identifies the type of information being indexed
</dd>
</dl></dd>
<dt><a name="label-18" id="label-18"><code>delete_default(<var>index</var>)</code></a></dt><!-- RDLabel: "delete_default" -->
<dt><a name="label-19" id="label-19"><code>delete_default(<var>type</var>, <var>syntax</var>)</code></a></dt><!-- RDLabel: "delete_default" -->
<dd>
Delete the identified index from the default index specification.
<dl>
<dt><a name="label-20" id="label-20"><var>index</var></a></dt><!-- RDLabel: "index" -->
<dd>
The index string is a comma separated list of strings that represent 
the indexing strategy
</dd>
<dt><a name="label-21" id="label-21"><var>type</var></a></dt><!-- RDLabel: "type" -->
<dd>
series of  values bitwise OR'd together to form the 
index strategy.
</dd>
<dt><a name="label-22" id="label-22"><var>syntax</var></a></dt><!-- RDLabel: "syntax" -->
<dd>
Identifies the type of information being indexed
</dd>
</dl></dd>
<dt><a name="label-23" id="label-23"><code>each {|<var>uri</var>, <var>name</var>, <var>index</var>| ... }</code></a></dt><!-- RDLabel: "each" -->
<dd>
Iterate over all indexes</dd>
<dt><a name="label-24" id="label-24"><code>find(<var>uri</var> = "", <var>name</var>)</code></a></dt><!-- RDLabel: "find" -->
<dd>
<p>Find the indexing startegy associated with <var>uri</var>, and <var>name</var></p>
<p>Return <var>nil</var> is no indexing strategy was defined</p></dd>
<dt><a name="label-25" id="label-25"><code>manager</code></a></dt><!-- RDLabel: "manager" -->
<dd>
Return the manager associated with the Index</dd>
<dt><a name="label-26" id="label-26"><code>replace(<var>uri</var>, <var>name</var>, <var>index</var>)</code></a></dt><!-- RDLabel: "replace" -->
<dt><a name="label-27" id="label-27"><code>replace(<var>uri</var>, <var>name</var>, <var>type</var>, <var>syntax</var>)</code></a></dt><!-- RDLabel: "replace" -->
<dd>
Replaces the indexing strategies for a named document or metadata node.
All existing indexing strategies for that node are deleted, and the 
indexing strategy identified by this method is set for the node.
<dl>
<dt><a name="label-28" id="label-28"><var>uri</var></a></dt><!-- RDLabel: "uri" -->
<dd>
The namespace for the element
</dd>
<dt><a name="label-29" id="label-29"><var>name</var></a></dt><!-- RDLabel: "name" -->
<dd>
The name parameter provides the fully qualified element type
to be indexed.
</dd>
<dt><a name="label-30" id="label-30"><var>index</var></a></dt><!-- RDLabel: "index" -->
<dd>
The index string is a comma separated list of strings that represent 
the indexing strategy
</dd>
<dt><a name="label-31" id="label-31"><var>type</var></a></dt><!-- RDLabel: "type" -->
<dd>
series of  values bitwise OR'd together to form the 
index strategy.
</dd>
<dt><a name="label-32" id="label-32"><var>syntax</var></a></dt><!-- RDLabel: "syntax" -->
<dd>
Identifies the type of information being indexed
</dd>
</dl></dd>
<dt><a name="label-33" id="label-33"><code>replace_default(<var>index</var>)</code></a></dt><!-- RDLabel: "replace_default" -->
<dt><a name="label-34" id="label-34"><code>replace_default(<var>type</var>, <var>syntax</var>)</code></a></dt><!-- RDLabel: "replace_default" -->
<dd>
Replace the default indexing strategy for the container. 
<dl>
<dt><a name="label-35" id="label-35"><var>index</var></a></dt><!-- RDLabel: "index" -->
<dd>
The index string is a comma separated list of strings that represent 
the indexing strategy
</dd>
<dt><a name="label-36" id="label-36"><var>type</var></a></dt><!-- RDLabel: "type" -->
<dd>
series of  values bitwise OR'd together to form the 
index strategy.
</dd>
<dt><a name="label-37" id="label-37"><var>syntax</var></a></dt><!-- RDLabel: "syntax" -->
<dd>
Identifies the type of information being indexed
</dd>
</dl></dd>
<dt><a name="label-38" id="label-38"><code>to_a</code></a></dt><!-- RDLabel: "to_a" -->
<dd>
Return an Array of all indexes</dd>
</dl>

</body>
</html>
